home *** CD-ROM | disk | FTP | other *** search
- #! /bin/sh
- ### BEGIN INIT INFO
- # Provides: halt
- # Required-Start: umountroot
- # Required-Stop:
- # Should-Start: lvm raid2
- # Should-Stop:
- # Default-Start: 0
- # Default-Stop:
- # Short-Description: Execute the halt command.
- # Description:
- ### END INIT INFO
-
- PATH=/usr/sbin:/usr/bin:/sbin:/bin
- [ -f /etc/default/halt ] && . /etc/default/halt
-
- . /lib/lsb/init-functions
-
- do_stop () {
- if [ "$INIT_HALT" = "" ]
- then
- case "$HALT" in
- [Pp]*)
- INIT_HALT=POWEROFF
- ;;
- [Hh]*)
- INIT_HALT=HALT
- ;;
- *)
- INIT_HALT=POWEROFF
- ;;
- esac
- fi
-
- # See if we need to cut the power.
- if [ "$INIT_HALT" = "POWEROFF" ] && [ -x /etc/init.d/ups-monitor ]
- then
- /etc/init.d/ups-monitor poweroff
- fi
-
- # Don't shut down drives if we're using RAID.
- hddown="-h"
- if grep -qs '^md.*active' /proc/mdstat
- then
- hddown=""
- fi
-
- # If INIT_HALT=HALT don't poweroff.
- poweroff="-p"
- if [ "$INIT_HALT" = "HALT" ]
- then
- poweroff=""
- fi
-
- log_action_msg "Will now halt"
- sleep 1
- halt -d -f -i $poweroff $hddown
- }
-
- case "$1" in
- start)
- # No-op
- ;;
- restart|reload|force-reload)
- echo "Error: argument '$1' not supported" >&2
- exit 3
- ;;
- stop)
- do_stop
- ;;
- *)
- echo "Usage: $0 start|stop" >&2
- exit 3
- ;;
- esac
-
- :
-